home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1999 #1 / Amiga Plus 1999 #1.iso / System-Boost / Graphics / XTrace / Install / Install_XTrace < prev   
Encoding:
Text File  |  1998-06-18  |  42.2 KB  |  899 lines

  1. ; $VER: Install 2.00 - Copyright by Condor's, Inc. All Rights Reserved.
  2. ; Script to install XTrace V 2.00
  3.  
  4. ; ============================================================================
  5. ; Variables
  6. ; ============================================================================
  7.  
  8. (SET #OSVersion         (/ (getversion) 65536))
  9. (SET #TRUE              1)
  10. (SET #FALSE             0)
  11. (SET #CPU               (database "cpu"))
  12. (SET #update            #FALSE)
  13. (SET #EC_PROCESSOR      1000)
  14.  
  15. (SET #Stack_Multiview   25000)
  16. (SET #Stack_XTrace       4096)
  17.  
  18. (SET #xPos_XTrace        50)
  19. (SET #yPos_XTrace        15)
  20.  
  21. (SET #xPos_XTConv        50)
  22. (SET #yPos_XTConv        90)
  23.  
  24. (SET #xPos_Guides       185)
  25. (SET #yPos_Guides        30)
  26.  
  27. (SET #xPos_Examples     280)
  28. (SET #yPos_Examples      30)
  29.  
  30. (SET #xPos_ReadMe       180)
  31. (SET #yPos_ReadMe       110)
  32.  
  33. (SET #xPos_RegForm      280)
  34. (SET #yPos_RegForm      110)
  35.  
  36. (SET #xPos_MainGuide     50)
  37. (SET #yPos_MainGuide     11)
  38.  
  39. (SET #CC_All            0)
  40. (SET #CC_Some           1)
  41. (SET #CC_OnlyNew        2)
  42. (SET #CC_None           3)
  43.  
  44. (SET #IPT_NoChange      0)
  45. (SET #IPT_Snapshot      1)
  46. (SET #IPT_Unsnapshot    2)
  47.  
  48. ; ****************************************************************************
  49. ; Procedures
  50. ; ****************************************************************************
  51.  
  52. ; ============================================================================
  53. ; XTINST_COPYEXAMPLEICONS
  54. ; #CEI_Format      = "AI", "EPSF", ...
  55. ; #CEI_Type        = "Drawing", "Picture", ...
  56. ; #CEI_DefaultTool = "Multiview", "XTrace", "", ...
  57. ; ============================================================================
  58.  
  59. (PROCEDURE XTINST_COPYEXAMPLEICONS #CEI_BasePath #CEI_Format #CEI_Type #CEI_DefaultTool #CEI_Stacksize
  60.  (
  61.   ; Copy and set drawer icon
  62.  
  63.   (XTINST_COPYICON (TACKON #CEI_BasePath (CAT "Drawer_" #CEI_Type ".info")) "XTDest:XTrace/Examples/" #CEI_Format #IPT_Unsnapshot 0 0 "" 0)
  64.  
  65.   ; Copy and set file icons
  66.  
  67.   (SET #CEI_FF_Drawer (TACKON "XTDest:XTrace/Examples/"     #CEI_Format))
  68.   (SET #CEI_FF_Icon   (TACKON #CEI_BasePath (CAT "Project_" #CEI_Type ".info")))
  69.  
  70.   (FOREACH #CEI_FF_Drawer "~(#?.info)"
  71.    (
  72.     (XTINST_COPYICON #CEI_FF_Icon #CEI_FF_Drawer @each-name #IPT_Unsnapshot 0 0 #CEI_DefaultTool #CEI_Stacksize)
  73.    )
  74.   )
  75.  )
  76. )
  77.  
  78. ; ============================================================================
  79. ; XTINST_COPYICON
  80. ; Note: #CI_NewName WITHOUT ".info" !
  81. ; ============================================================================
  82.  
  83. (PROCEDURE XTINST_COPYICON #CI_Source #CI_Dest #CI_NewName #CI_PosType #CI_xPos #CI_yPos #CI_DefaultTool #CI_Stacksize
  84.  (
  85.   ; Copy
  86.  
  87.   (COPYFILES (SOURCE #CI_Source) (DEST #CI_Dest) (NEWNAME (CAT #CI_NewName ".info")))
  88.  
  89.   ; Build icon name
  90.  
  91.   (SET #CI_IconName (TACKON #CI_Dest #CI_NewName))
  92.  
  93.   ; Set default tool and stack size
  94.  
  95.   (TOOLTYPE (DEST #CI_IconName) (SETSTACK #CI_Stacksize) (SETDEFAULTTOOL #CI_DefaultTool))
  96.  
  97.   ; Set position
  98.  
  99.   (IF (= #CI_PosType #IPT_Snapshot)   (TOOLTYPE (DEST #CI_IconName) (SETPOSITION #CI_xPos #CI_yPos)))
  100.   (IF (= #CI_PosType #IPT_Unsnapshot) (TOOLTYPE (DEST #CI_IconName) (NOPOSITION)))
  101.  )
  102. )
  103.  
  104. ; ****************************************************************************
  105. ; Main
  106. ; ****************************************************************************
  107.  
  108. ; ============================================================================
  109. ; Strings
  110. ; ============================================================================
  111.  
  112. (IF (= @language "deutsch")
  113.  (
  114.   ; German strings
  115.  
  116.   (SET #Msg_Welcome               "Willkommen bei der Installation von XTrace V 2.00 !\nCopyright by Ronny Schütz / Condor's, Inc. Leipzig\nAll rights reserved.\n\nSie können jederzeit die Installation abbrechen und alle installierten Teile von XTrace werden gelöscht.\n\nFalls Sie sich entscheiden XTrace zu löschen brauchen Sie nur die XTrace-Schublade entfernen.\n\nDiese Install-Script wurde mit dem Installer V43.3 (aminet:util/misc/Installer-43_3.lha) getestet.")
  117.   (SET #Msg_Dir                   "Wählen Sie bitte ein Verzeichnis in dem XTrace installiert werden soll. Ein eigenes XTrace Verzeichnis wird angelegt. Es sollten 2 Mb auf dem Datenträger frei sein.")
  118.   (SET #Msg_Proc                  "Wählen Sie den/die Prozessor(en) Ihres Amigas®. Ihre Konfiguration bzw. eine lauffähige Konfiguration die als CPU-File vorhanden ist sollte bereits ausgewählt sein.")
  119.   (SET #Msg_Guides                "Wählen Sie die Sprache der zu installierenden Dokumentation.")
  120.   (SET #Msg_Filters               "Wählen Sie, welche digitalen Filter Sie installieren wollen.")
  121.   (SET #Msg_FSeq                  "Wählen Sie, welche digitalen Filtersequenzen Sie installieren wollen.")
  122.   (SET #Msg_IconType              "Wählen Sie die zu installierenden Icons.")
  123.   (SET #Msg_Examples              "\n\n\nWollen Sie die Beispiele installieren ?")
  124.   (SET #Msg_Bye                   "\n\n\n\nDanke das Sie XTrace installiert/geupdated haben. Vergessen Sie nicht sich registrieren zu lassen !")
  125.   (SET #Msg_ByeReg                "\n\n\n\nDanke das Sie XTrace wieder installiert/geupdated haben.")
  126.  
  127.   (SET #Msg_Kick                  "Tut mir leid, aber XTrace benötigt mindestens AmigaDOS V3.0.")
  128.   (SET #Msg_MissCPUVer            "Sie haben kein CPU-LhA-File, in dem das Hauptprogramm enthalten ist, in dieses Directory entpackt. Bitte holen Sie dies nach und starten Sie das Install-Script erneut.\n\nSiehe auch File 'Documentation/Deutsch/Read_Me_First' oder 'Read_Me_First'.")
  129.   (SET #Msg_MissDoc               "Sie haben kein Doc-LhA-File, in dem die Dokumentation enthalten ist, in dieses Directory entpackt. Bitte holen Sie dies nach und starten Sie das Install-Script erneut.\n\nSiehe auch File 'Read_Me_First'.")
  130.   (SET #Msg_VersTooHigh           "Alle aktuell vorhandenen CPU-Versionen von XTrace sind zu hoch für den installierten Prozessor. Bitte besorgen Sie sich eine niedrigere CPU-Version und starten Sie das Install-Script erneut.\n\nSiehe auch File 'Documentation/Deutsch/Read_Me_First' oder 'Read_Me_First'.")
  131.  
  132.   (SET #Msg_CopyLibs              "Kopiere Libraries.\nNur neuere Versionen als im LIBS: werden kopiert.")
  133.   (SET #Msg_CopyBinary            "Kopiere XTrace Hauptprogramm.")
  134.  
  135.   (SET #Msg_LangEng               "Englisch")
  136.   (SET #Msg_LangGer               "Deutsch")
  137.   (SET #Msg_LangFre               "Französisch")
  138.   (SET #Msg_LangDut               "Holländisch")
  139.   (SET #Msg_LangSpa               "Spanisch")
  140.   (SET #Msg_LangGre               "Griechisch")
  141.   (SET #Msg_LangRus               "Russisch")
  142.   (SET #Msg_LangIta               "Italienisch")
  143.   (SET #Msg_LangCze               "Tschechisch")
  144.   (SET #Msg_LangPor               "Portugiesisch")
  145.   (SET #Msg_LangSwe               "Schwedisch")
  146.   (SET #Msg_LangDan               "Dänisch")
  147.  
  148.   (SET #Msg_CLN_Help              "Sie können hier wählen, ob Sie die mitgelieferte Version der Library installieren, oder eine evtl. bereits installierte nutzen wollen. Beachten Sie bitte, daß XTrace ohne die reqtools.library und die xpkmaster.library nicht funktioniert.")
  149.   (SET #Msg_CLX_Help              "Sie können hier wählen, ob Sie die mitgelieferte Version der Library installieren, oder eine evtl. bereits installierte nutzen wollen. Beachten Sie bitte, daß zur Nutzung der xpkmaster.library mindestens ein XPK-Kompressor benötigt wird.")
  150.   (SET #Msg_Filt_Help             "Hier können Sie die digitalen Filter wählen, die Sie für Benutzung der XTrace-Funktion 'Apply Digital Filter Sequence' mitinstallieren wollen.")
  151.   (SET #Msg_FSeq_Help             "Hier können Sie die digitalen Filtersequenzen wählen, die Sie für Benutzung der XTrace-Funktion 'Apply Digital Filter Sequence' mitinstallieren wollen.")
  152.  
  153.   (SET #Msg_Yes                   "Ja")
  154.   (SET #Msg_No                    "Nein")
  155.  
  156.   (SET #Msg_All                   "Alle")
  157.   (SET #Msg_Some                  "Einige ausgewählte")
  158.   (SET #Msg_OnlyNew               "Nur neue")
  159.   (SET #Msg_None                  "Keine")
  160.  
  161.   (SET #Msg_WFilters              " Filter")
  162.   (SET #Msg_WFSeq                 " Filtersequenzen")
  163.  
  164.   (SET #Msg_IconType_Standard     "Standard Icons")
  165.   (SET #Msg_IconType_MagicWB      "MagicWB Icons")
  166.  
  167.   (SET #Msg_Abort                 "Installation abgebrochen. Wollen Sie die bereits installierten Dateien löschen ?\n\nFalls Sie eine existierende Version von XTrace geupdated haben könnte diese bereits überschrieben worden sein. Installieren Sie sie bitte neu.\n\n")
  168.   (SET #Msg_Abort_RYes            "Ja, entfernen")
  169.   (SET #Msg_Abort_RNo             "Nein")
  170.  
  171.   (SET #Msg_AbortOnly             "Installation abgebrochen.")
  172.  
  173.   (SET #Msg_Update                "\nACHTUNG !\n\nSie updaten XTrace !\n\nDas alte XTrace-Hauptprogramm, die Hilfsdatei(en), die Beispiele und alle Icons werden überschrieben bzw. gelöscht !!!\n")
  174.   (SET #Msg_Update_Abort          "Update abbrechen")
  175.   (SET #Msg_Update_Overw          "Überschreiben")
  176.  
  177.   (SET #Msg_OldInstaller          "\nACHTUNG !\n\nSie benutzen eine alte Version (< V 43.3) des Installers. Dabei können Probleme während der Installation von XTrace auftreten. Ich empfehle, sie besorgen sich die neueste Version (Installer_43_3.lha) des Installers z.B. aus dem Aminet oder von einer der AminetCDs 13 - 17, da ältere Versionen sehr viele Fehler enthielten.\n\nInstallation fortsetzen ?")
  178.  
  179.   (SET #Msg_LowSpace              "\nACHTUNG !\n\nEs ist sehr wenig freier Platz auf dem ausgewählten Laufwerk vorhanden !")
  180.   (SET #Msg_AnotherDisk           "Anderes Laufwerk wählen")
  181.   (SET #Msg_ThisDisk              "Trotzdem installieren")
  182.  )
  183.  (
  184.   (IF (= @language "français")
  185.    (
  186.     ; French strings
  187.  
  188.     (SET #Msg_Welcome               "Bienvenue pour l'installation de XTrace V 2.00 !\nCopyright par Ronny Schütz / Condor's, Inc. Leipzig\nTous droits réservés.\n\nVous pouvez interrompre l'installation, et toutes les parties installées\n seront alors effacées proprement.\n\nSi vous décidez de désinstaller XTrace, n'effacez que le tiroir XTrace.\n\nCe script d'installation a été testé avec Installer V43.3\n(aminet:util/misc/Installer-43_3.lha).")
  189.     (SET #Msg_Dir                   "Veuillez choisir un répertoire pour installer XTrace.\nUn tiroir dédié appelé XTrace sera créé. Il devrait y avoir 2 MG libres.")
  190.     (SET #Msg_Proc                  "Choisissez le(s) processeur(s) de votre Amiga®. Votre configuration, resp. une configuration utilisable disponible depuis un fichier CPU, devrait déjà avoir été choisie.")
  191.     (SET #Msg_Guides                "Choisissez la langue de la documentation à installer.")
  192.     (SET #Msg_Filters               "Choisissez les filtres digitaux à installer.")
  193.     (SET #Msg_FSeq                  "Choisissez les séquences de filtres digitaux à installer.")
  194.     (SET #Msg_IconType              "Choose the icons to install.")
  195.     (SET #Msg_Examples              "\n\n\nVoulez-vous installer des exemples ?")
  196.     (SET #Msg_Bye                   "\n\n\n\nMerci d'avoir installé/mis à jour XTrace.\n\nN'oubliez pas de vous enregistrer !")
  197.     (SET #Msg_ByeReg                "\n\n\n\nMerci d'avoir installé/mis à jour XTrace à nouveau.")
  198.  
  199.     (SET #Msg_Kick                  "Désolé, mais XTrace à besoin de l'AmigaDOS V3.0 ou supérieur.")
  200.     (SET #Msg_MissCPUVer            "Vous n'avez pas extrait dans ce répertoire l'archive CPU,\nqui contient le programme principal.\n\nVeuiller le faire et lancer ce script à nouveau.\n\nVoyez également le fichier 'Documentation/French/Read_Me_First'\nou 'Read_Me_First'.")
  201.     (SET #Msg_MissDoc               "Vous n'avez pas extrait dans ce répertoire l'archive Doc,\nqui contient la documentation.\n\nVeuillez le faire et lancer ce script à nouveau.\n\nVoyez également le fichier 'Read_Me_First'.")
  202.     (SET #Msg_VersTooHigh           "Toutes les versions CPU présentes de XTrace sont trop élevées pour le processeur installé.\nVeuillez vous procurer une version CPU moins élevée et lancer ce script à nouveau.\n\nVoyez également le fichier 'Documentation/French/Read_Me_First' ou 'Read_Me_First'.")
  203.  
  204.     (SET #Msg_CopyLibs              "Copie des bibliothèques.\nSeules des versions plus récentes que celles de LIBS: seront copiées.")
  205.     (SET #Msg_CopyBinary            "Copie du programme principal de XTrace.")
  206.  
  207.     (SET #Msg_LangEng               "Anglais")
  208.     (SET #Msg_LangGer               "Allemand")
  209.     (SET #Msg_LangFre               "Français")
  210.     (SET #Msg_LangDut               "Hollandais")
  211.     (SET #Msg_LangSpa               "Espagnol")
  212.     (SET #Msg_LangGre               "Grec")
  213.     (SET #Msg_LangRus               "Russe")
  214.     (SET #Msg_LangIta               "Italien")
  215.     (SET #Msg_LangCze               "Tchèque")
  216.     (SET #Msg_LangPor               "Portuguais")
  217.     (SET #Msg_LangSwe               "Suédois")
  218.     (SET #Msg_LangDan               "Danois")
  219.  
  220.     (SET #Msg_CLN_Help              "Vous pouvez choisir, si vous voulez installer les bibliothèques fournies ou utiliser celles qui sont déjà installées. Mais n'oubliez pas que XTrace ne fonctionnera pas sans la reqtools.library et la xpkmaster.library.")
  221.     (SET #Msg_CLX_Help              "Vous pouvez choisir, si vous voulez installer les bibliothèques fournies ou utiliser celles qui sont déjà installées. Mais n'oubliez pas, pour utiliser la xpkmaster.library vous avez besoin d'au moins un compresseur XPK.")
  222.     (SET #Msg_Filt_Help             "Ici vous pouvez choisir les filtres digitaux à installer qui seront utilisés avec la fonction de XTrace 'Apply Digital Filter Sequence'.")
  223.     (SET #Msg_FSeq_Help             "Ici vous pouvez choisir les séquences de filtres digitaux à installer qui seront utilisées avec  la fonction de XTrace 'Apply Digital Filter Sequence'.")
  224.  
  225.     (SET #Msg_Yes                   "Oui")
  226.     (SET #Msg_No                    "Non")
  227.  
  228.     (SET #Msg_All                   "Totalité des")
  229.     (SET #Msg_Some                  "Choix de quelques")
  230.     (SET #Msg_OnlyNew               "Juste les nouveautés parmi les")
  231.     (SET #Msg_None                  "Pas de")
  232.  
  233.     (SET #Msg_WFilters              " filtres")
  234.     (SET #Msg_WFSeq                 " séquences de filtres")
  235.  
  236.     (SET #Msg_IconType_Standard     "Standard icons")
  237.     (SET #Msg_IconType_MagicWB      "MagicWB icons")
  238.  
  239.     (SET #Msg_Abort                 "Installation interrompue. Voulez-vous effacer les fichiers installés ?\n\nSi vous faîtes une mise à jour d'une version existante de XTrace, certains fichiers risquent d'avoir déjà été écrasés, donc vous devez tout ré-installer.\n\n")
  240.     (SET #Msg_Abort_RYes            "Oui")
  241.     (SET #Msg_Abort_RNo             "Non")
  242.  
  243.     (SET #Msg_AbortOnly             "Installation interrompue.")
  244.  
  245.     (SET #Msg_Update                "\nATTENTION !\n\nVous faites une mise à jour de XTrace !\n\nL'ancien programme principal XTrace, le guides,\nle exemples et toutes les icônes seront écrasés ou effacés !!!")
  246.     (SET #Msg_Update_Abort          "Annuler la mise à jour")
  247.     (SET #Msg_Update_Overw          "Ecraser")
  248.  
  249.     (SET #Msg_OldInstaller          "\nATTENTION !\n\nVous utilisez une vieille version (< V 43.3) de l'Installers. De ce fait des problèmes peuvent surevenir pendant l'installation de XTrace. Je vous suggère de vous procurer la dernière version (Installer_43_3.lha) de l'Installer, par exemple sur Aminet ou sur un des CDs Aminet 13 - 17, car les versions antérieures ont de nombreux bugs.\n\nContinuer l'installation ?".)
  250.  
  251.     (SET #Msg_LowSpace              "\nATTENTION !\n\nIl ne reste pas beaucoup de place sur ce lecteur !")
  252.     (SET #Msg_AnotherDisk           "Choisir un autre lecteur")
  253.     (SET #Msg_ThisDisk              "Installer quand même")
  254.    )
  255.    (
  256.     ; English strings
  257.  
  258.     (SET #Msg_Welcome               "Welcome to the installation of XTrace V 2.00 !\nCopyright by Ronny Schütz / Condor's, Inc. Leipzig\nAll rights reserved.\n\nYou can always abort the installation and the installed parts will be safely deleted.\n\nIf you decide to uninstall XTrace, only delete the XTrace drawer.\n\nThis install script was tested with Installer V43.3 (aminet:util/misc/Installer-43_3.lha).")
  259.     (SET #Msg_Dir                   "Please choose a directory to install XTrace. A own XTrace directory will be created. There should be 2 Mb free.")
  260.     (SET #Msg_Proc                  "Choose the processor(s) of your Amiga®. Your configuration resp. a runable configuration available from a CPU file should be already choosen.")
  261.     (SET #Msg_Guides                "Choose the language of the documentation to install.")
  262.     (SET #Msg_Filters               "Choose the digital filters to install.")
  263.     (SET #Msg_FSeq                  "Choose the digital filter sequences to install.")
  264.     (SET #Msg_IconType              "Choose the icons to install.")
  265.     (SET #Msg_Examples              "\n\n\nDo you want to install examples ?")
  266.     (SET #Msg_Bye                   "\n\n\n\nThank you for installing/updating XTrace. Don't forget to register !")
  267.     (SET #Msg_ByeReg                "\n\n\n\nThank you for installing/updating XTrace again.")
  268.  
  269.     (SET #Msg_Kick                  "Sorry, but XTrace requires at least AmigaDOS V3.0.")
  270.     (SET #Msg_MissCPUVer            "You havn't extract a CPU-LhA-file, which contain the main program, into this directory. Please do this and start the install script again.\n\nSee also file 'Documentation/English/Read_Me_First' or 'Read_Me_First'.")
  271.     (SET #Msg_MissDoc               "You havn't extract a Doc-LhA-file, which contain the documentation, into this directory. Please do this and start the install script again.\n\nSee also file 'Read_Me_First'.")
  272.     (SET #Msg_VersTooHigh           "All present CPU versions of XTrace are too high for the installed processor. Please get a lower CPU version and start the install script again.\n\nSee also file 'Documentation/English/Read_Me_First' or 'Read_Me_First'.")
  273.  
  274.     (SET #Msg_CopyLibs              "Copy libraries.\nOnly newer versions as in LIBS: will be copied.")
  275.     (SET #Msg_CopyBinary            "Copy XTrace main program.")
  276.  
  277.     (SET #Msg_LangEng               "English")
  278.     (SET #Msg_LangGer               "German")
  279.     (SET #Msg_LangFre               "French")
  280.     (SET #Msg_LangDut               "Dutch")
  281.     (SET #Msg_LangSpa               "Spanish")
  282.     (SET #Msg_LangGre               "Greek")
  283.     (SET #Msg_LangRus               "Russian")
  284.     (SET #Msg_LangIta               "Italian")
  285.     (SET #Msg_LangCze               "Czech")
  286.     (SET #Msg_LangPor               "Portuguese")
  287.     (SET #Msg_LangSwe               "Swedish")
  288.     (SET #Msg_LangDan               "Danish")
  289.  
  290.     (SET #Msg_CLN_Help              "You can choose, if you want to install the included libraries or use the installed ones. But please remember, XTrace won't run without reqtools.library and xpkmaster.library.")
  291.     (SET #Msg_CLX_Help              "You can choose, if you want to install the included libraries or use the installed ones. But please remember, for using the xpkmaster.library you need at lease one XPK-compressor.")
  292.     (SET #Msg_Filt_Help             "Here you can choose the digital filters to install for using with the XTrace function 'Apply Digital Filter Sequence'.")
  293.     (SET #Msg_FSeq_Help             "Here you can choose the digital filter sequences to install for using with the XTrace function 'Apply Digital Filter Sequence'.")
  294.  
  295.     (SET #Msg_Yes                   "Yes")
  296.     (SET #Msg_No                    "No")
  297.  
  298.     (SET #Msg_All                   "All")
  299.     (SET #Msg_Some                  "Some choosed")
  300.     (SET #Msg_OnlyNew               "Only new")
  301.     (SET #Msg_None                  "None")
  302.  
  303.     (SET #Msg_WFilters              " filters")
  304.     (SET #Msg_WFSeq                 " filter sequences")
  305.  
  306.     (SET #Msg_IconType_Standard     "Standard icons")
  307.     (SET #Msg_IconType_MagicWB      "MagicWB icons")
  308.  
  309.     (SET #Msg_Abort                 "Installation aborted. Do you want to delete the files that were installed ?\n\nIf you are updating an existing version of XTrace, it may have already been overwritten, so you must reinstall it.\n\n")
  310.     (SET #Msg_Abort_RYes            "Yes, remove")
  311.     (SET #Msg_Abort_RNo             "No")
  312.  
  313.     (SET #Msg_AbortOnly             "Installation aborted.")
  314.  
  315.     (SET #Msg_Update                "\nATTENTION !\n\nYou're updating XTrace !\n\nThe old main XTrace binary, the guide, the examples and all icons will be overwritten or deleted !!!")
  316.     (SET #Msg_Update_Abort          "Abort update")
  317.     (SET #Msg_Update_Overw          "Overwrite")
  318.  
  319.     (SET #Msg_OldInstaller          "\nATTENTION !\n\nYou're using an old version (< V 43.3) of the Installers. Thereby problems while installing XTrace can occur. I suggest to provide the newest version (Installer_43_3.lha) of the Installer, for example from the Aminet or from one of the Aminet CDs 13 - 17, because of older version contains many bugs.\n\nContinue installation ?".)
  320.  
  321.     (SET #Msg_LowSpace              "\nATTENTION !\n\nOn the selected drive is very few space available !")
  322.     (SET #Msg_AnotherDisk           "Choose another drive")
  323.     (SET #Msg_ThisDisk              "Install although")
  324.    )
  325.   )
  326.  )
  327. )
  328.  
  329. ; ============================================================================
  330. ; Initialization
  331. ; ============================================================================
  332.  
  333. ; Make sure that we are running under 3.0 or better
  334.  
  335. (IF (< #OSVersion 39) (ABORT #Msg_Kick))
  336.  
  337. ; Set up error routine
  338.  
  339. (ONERROR
  340.  (IF (EXISTS "XTDest:" (NOREQ))
  341.  (
  342.   (IF (ASKBOOL
  343.    (PROMPT #Msg_Abort)
  344.    (HELP @ASKBOOL-HELP)
  345.    (CHOICES #Msg_Abort_RYes
  346.             #Msg_Abort_RNo)
  347.    (DEFAULT 0))
  348.    (
  349.     (RUN "delete XTDest:(XTrace|XTrace.info) QUIET FORCE ALL")
  350.    )
  351.   )
  352.  
  353.   (MAKEASSIGN "XTSrc"  (SAFE))
  354.   (MAKEASSIGN "XTDest" (SAFE))
  355.  ))
  356. )
  357.  
  358. ; ============================================================================
  359. ; Installation
  360. ; ============================================================================
  361.  
  362. (MESSAGE #Msg_Welcome)
  363. (COMPLETE 0)
  364.  
  365. ; cancel the assign in case of installation restart
  366.  
  367. (MAKEASSIGN "XTSrc" (SAFE))
  368. (MAKEASSIGN "XTDest" (SAFE))
  369.  
  370. ; ============================================================================
  371. ; Check Installer version; warn if it older than 43.3
  372. ; ============================================================================
  373.  
  374. (SET #Installer_Ver  (SHIFTRIGHT @installer-version 16))
  375. (SET #Installer_Rev  (BITAND     @installer-version $FFFF))
  376. (SET #Installer_FVer (+ (* #Installer_Ver 1000) #Installer_Rev))
  377.  
  378. (IF (< #Installer_FVer 43003)
  379.  (
  380.   IF((NOT (ASKBOOL
  381.    (PROMPT #Msg_OldInstaller)
  382.    (HELP @ASKBOOL-HELP)
  383.    (DEFAULT 1))))
  384.   (
  385.    ; ===== Remove assigns
  386.  
  387.    (MAKEASSIGN "XTSrc"  (SAFE))
  388.    (MAKEASSIGN "XTDest" (SAFE))
  389.  
  390.    (EXIT #Msg_AbortOnly)
  391.   )
  392.  )
  393. )
  394.  
  395. ; ============================================================================
  396. ; Ask for directory and create (got some parts from St. Kosts SoundFX install-
  397. ; script. Thanks Stefan.)
  398. ; ============================================================================
  399.  
  400. ; Check if there are assigns, which could contain graphic/DTP programs
  401.  
  402. (IF (= (EXISTS "Graphics:" (NOREQ)) 2) (SET @default-dest "Graphics:"))
  403. (IF (= (EXISTS "Grafik:"   (NOREQ)) 2) (SET @default-dest "Grafik:"))
  404. (IF (= (EXISTS "DTP:"      (NOREQ)) 2) (SET @default-dest "DTP:"))
  405.  
  406. ; Was XTrace already installed in the past ?
  407.  
  408. (SET #LastDest (GETENV "Installer/Programs/XTracePath"))
  409. (IF (<> (STRLEN #LastDest) 0) (SET @default-dest #LastDest))
  410.  
  411. ; Let the user choose/edit the directory (until he has choosen a device with
  412. ; enough free space or he has interrupted the installation).
  413.  
  414. (SET #DeviceOk #FALSE)
  415. (WHILE (= #DeviceOk #FALSE)
  416.  (
  417.   ; Choose path
  418.  
  419.   (SET #XTDest (TACKON (ASKDIR (PROMPT #Msg_Dir) (HELP @ASKDIR-HELP) (DEFAULT @default-dest)) "XTrace"))
  420.   (MAKEASSIGN "XTDest" (PATHONLY #XTDest) (SAFE))
  421.  
  422.   ; Update or new installation ?
  423.  
  424.   (IF (EXISTS "XTDest:XTrace")
  425.    (
  426.     (SET #update #TRUE)
  427.    )
  428.    (
  429.     (MAKEDIR "XTDest:XTrace")
  430.     (SET #update #FALSE)
  431.    )
  432.   )
  433.  
  434.   ; Check for free space
  435.  
  436.   (SET #FreeSpace (GETDISKSPACE "XTDest:"))
  437.  
  438.   (IF (< #FreeSpace 2097152)
  439.    (
  440.     ; Not enough space available
  441.  
  442.     (SET #DeviceOk (ASKBOOL (PROMPT #Msg_LowSpace) (HELP @ASKBOOL-HELP) (CHOICES #Msg_ThisDisk #Msg_AnotherDisk)))
  443.    )
  444.    (
  445.     ; Enough space available
  446.  
  447.     (SET #DeviceOk #TRUE)
  448.    )
  449.   )
  450.  )
  451. )
  452.  
  453. (MAKEASSIGN "XTSrc" "/")
  454. (SET @default-dest (EXPANDPATH "XTDest:"))
  455.  
  456. ; Store install path for the future
  457.  
  458. (RUN (CAT "SETENV Installer/Programs/XTracePath " @default-dest))
  459. (RUN "makedir ENVARC:Installer")
  460. (RUN "makedir ENVARC:Installer/Programs")
  461. (RUN "copy ENV:Installer/Programs/XTracePath ENVARC:Installer/Programs/XTracePath")
  462.  
  463. ; ============================================================================
  464. ; Check for update 
  465. ; ============================================================================
  466.  
  467. (IF (= #update #TRUE)
  468.  (
  469.   IF(ASKBOOL
  470.      (PROMPT #Msg_Update)
  471.      (HELP @ASKBOOL-HELP)
  472.      (CHOICES #Msg_Update_Overw #Msg_Update_Abort)
  473.      (DEFAULT 0))
  474.   (
  475.    ; ===== Delete binary, guides, icons and examples.
  476.  
  477.    (RUN "delete XTDest:XTrace/XTrace XTDest:XTrace/XTrace.info XTDest:XTrace/Guides/#? XTDest:XTrace/Icons/#? XTDest:XTrace/Examples XTDest:XTrace/Examples.info QUIET ALL FORCE")
  478.   )
  479.   (
  480.    ; ===== Remove assigns
  481.  
  482.    (MAKEASSIGN "XTSrc"  (SAFE))
  483.    (MAKEASSIGN "XTDest" (SAFE))
  484.  
  485.    (EXIT #Msg_AbortOnly)
  486.   )
  487.  )
  488. )
  489.  
  490. ; ============================================================================
  491. ; Check copied processor versions
  492. ; ============================================================================
  493.  
  494. (IF (EXISTS "XTSrc:Bin/XTrace.000")    (SET #CPU000    #TRUE) (SET #CPU000    #FALSE))
  495. (IF (EXISTS "XTSrc:Bin/XTrace.020")    (SET #CPU020    #TRUE) (SET #CPU020    #FALSE))
  496. (IF (EXISTS "XTSrc:Bin/XTrace.020882") (SET #CPU020882 #TRUE) (SET #CPU020882 #FALSE))
  497. (IF (EXISTS "XTSrc:Bin/XTrace.030")    (SET #CPU030    #TRUE) (SET #CPU030    #FALSE))
  498. (IF (EXISTS "XTSrc:Bin/XTrace.030882") (SET #CPU030882 #TRUE) (SET #CPU030882 #FALSE))
  499. (IF (EXISTS "XTSrc:Bin/XTrace.040")    (SET #CPU040    #TRUE) (SET #CPU040    #FALSE))
  500. (IF (EXISTS "XTSrc:Bin/XTrace.060")    (SET #CPU060    #TRUE) (SET #CPU060    #FALSE))
  501.  
  502. (SET #CPUCopied (+ (+ (+ #CPU000 #CPU020) (+ #CPU020882 #CPU030)) (+ (+ #CPU030882 #CPU040) #CPU060)))
  503.  
  504. ; Abort if no binaries extracted
  505.  
  506. (IF (= #CPUCopied 0) (ABORT #Msg_MissCPUVer))
  507.  
  508. ; ============================================================================
  509. ; Ask for processor 
  510. ; ============================================================================
  511.  
  512. ; Check for FPU. #FPU <> 0 -> no FPU found !
  513.  
  514. (IF (EXISTS "c:CPU") (SET #FPU (RUN "c:CPU CHECK 68882")) (SET #FPU 5))
  515.  
  516. ; Set processor
  517.  
  518. (IF (OR (= #CPU "68000") (= #CPU "68010")) (SET #Processor 0))
  519. (IF (= #CPU "68020") (IF (<> #FPU 0)       (SET #Processor 1) (SET #Processor 2)))
  520. (IF (= #CPU "68030") (IF (<> #FPU 0)       (SET #Processor 3) (SET #Processor 4)))
  521. (IF (= #CPU "68040")                       (SET #Processor 5))
  522. (IF (= #CPU "68060")                       (SET #Processor 6))
  523.  
  524. ; Fall back, if installed CPU/FPU version not available
  525. ; Different fall back mechanisms, depend on #Processor, to avoid selecting the '030 version
  526. ; after the '020882 version if only 020882 processors are present.
  527.  
  528. (IF (>= #Processor 3)
  529.  (
  530.   ; 68030, 68030/882, 68040, 68060
  531.   ; 060 -> 040 -> 030/882 -> 020/882 -> 030 -> 020 -> 000
  532.  
  533.   (IF (AND (= #Processor 6) (= #CPU060    #FALSE)) (SET #Processor             5))
  534.   (IF (AND (= #Processor 5) (= #CPU040    #FALSE)) (SET #Processor             4))
  535.   (IF (AND (= #Processor 4) (= #CPU030882 #FALSE)) (SET #Processor             2))
  536.   (IF (AND (= #Processor 2) (= #CPU020882 #FALSE)) (SET #Processor             3))
  537.   (IF (AND (= #Processor 3) (= #CPU030    #FALSE)) (SET #Processor             1))
  538.   (IF (AND (= #Processor 1) (= #CPU020    #FALSE)) (SET #Processor             0))
  539.   (IF (AND (= #Processor 0) (= #CPU000    #FALSE)) (SET #Processor #EC_PROCESSOR))
  540.  )
  541.  (
  542.   ; 68000, 68020, 68020/882
  543.   ; 020/882 -> 020 -> 000
  544.  
  545.   (IF (AND (= #Processor 2) (= #CPU020882 #FALSE)) (SET #Processor             1))
  546.   (IF (AND (= #Processor 1) (= #CPU020    #FALSE)) (SET #Processor             0))
  547.   (IF (AND (= #Processor 0) (= #CPU000    #FALSE)) (SET #Processor #EC_PROCESSOR))
  548.  )
  549. )
  550.  
  551. ; All installed versions too high ?
  552.  
  553. (IF (= #Processor #EC_PROCESSOR) (ABORT #Msg_VersTooHigh))
  554.  
  555. (IF (AND (= @user-level 2) (> #CPUCopied 1))
  556.  (SET #Processor
  557.   (ASKCHOICE
  558.    (PROMPT #Msg_Proc)
  559.    (HELP @ASKCHOICE-HELP)
  560.    (CHOICES (IF (= #CPU000    #TRUE) ("MC 68000")                 (""))
  561.             (IF (= #CPU020    #TRUE) ("MC 68020")                 (""))
  562.             (IF (= #CPU020882 #TRUE) ("MC 68020 & FPU (M 68882)") (""))
  563.             (IF (= #CPU030    #TRUE) ("MC 68030")                 (""))
  564.             (IF (= #CPU030882 #TRUE) ("MC 68030 & FPU (M 68882)") (""))
  565.             (IF (= #CPU040    #TRUE) ("MC 68040")                 (""))
  566.             (IF (= #CPU060    #TRUE) ("MC 68060")                 ("")))
  567.    (DEFAULT #Processor)
  568.   )
  569.  )
  570. )
  571.  
  572. ; ============================================================================
  573. ; Install main program
  574. ; ============================================================================
  575.  
  576. (COPYFILES (SOURCE (TACKON ("XTSrc:Bin/") (SELECT #Processor "XTrace.000" "XTrace.020" "XTrace.020882" "XTrace.030" "XTrace.030882" "XTrace.040" "XTrace.060")))
  577.            (DEST "XTDest:XTrace/") (NEWNAME "XTrace")
  578. )
  579.  
  580. (COMPLETE 12)
  581.  
  582. ; ============================================================================
  583. ; Install file format converter
  584. ; ============================================================================
  585.  
  586. (COPYFILES (SOURCE "XTSrc:Bin/FileFormatConverter") (DEST "XTDest:XTrace/"))
  587. (COMPLETE 15)
  588.  
  589. ; ============================================================================
  590. ; Check copied guides
  591. ; ============================================================================
  592.  
  593. (IF (EXISTS "XTSrc:Documentation/English")    (SET #GUI00 #TRUE) (SET #GUI00 #FALSE))
  594. (IF (EXISTS "XTSrc:Documentation/German")     (SET #GUI01 #TRUE) (SET #GUI01 #FALSE))
  595. (IF (EXISTS "XTSrc:Documentation/French")     (SET #GUI02 #TRUE) (SET #GUI02 #FALSE))
  596. (IF (EXISTS "XTSrc:Documentation/Dutch")      (SET #GUI03 #TRUE) (SET #GUI03 #FALSE))
  597. (IF (EXISTS "XTSrc:Documentation/Spanish")    (SET #GUI04 #TRUE) (SET #GUI04 #FALSE))
  598. (IF (EXISTS "XTSrc:Documentation/Greek")      (SET #GUI05 #TRUE) (SET #GUI05 #FALSE))
  599. (IF (EXISTS "XTSrc:Documentation/Russian")    (SET #GUI06 #TRUE) (SET #GUI06 #FALSE))
  600. (IF (EXISTS "XTSrc:Documentation/Italian")    (SET #GUI07 #TRUE) (SET #GUI07 #FALSE))
  601. (IF (EXISTS "XTSrc:Documentation/Czech")      (SET #GUI08 #TRUE) (SET #GUI08 #FALSE))
  602. (IF (EXISTS "XTSrc:Documentation/Portuguese") (SET #GUI09 #TRUE) (SET #GUI09 #FALSE))
  603. (IF (EXISTS "XTSrc:Documentation/Swedish")    (SET #GUI10 #TRUE) (SET #GUI10 #FALSE))
  604. (IF (EXISTS "XTSrc:Documentation/Danish")     (SET #GUI11 #TRUE) (SET #GUI11 #FALSE))
  605.  
  606. (SET #GUISum (+ (+ (+ (+ #GUI00 #GUI01) (+ #GUI02 #GUI03)) (+ (+ #GUI04 #GUI05) (+ #GUI06 #GUI07))) (+ (+ #GUI08 #GUI09) (+ #GUI10 #GUI11))))
  607.  
  608. ; Abort if no guides extracted
  609.  
  610. (IF (= #GUISum 0) (ABORT #Msg_MissDoc))
  611.  
  612. ; ============================================================================
  613. ; Choose guide and ReadMe
  614. ; ============================================================================
  615.  
  616. ; Only one guide available ?
  617.  
  618. (IF (<> #GUISum 1)
  619.  (
  620.   ; Request, which file should be copied
  621.  
  622.   (IF (= @language "english")   (SET #Guide  0))
  623.   (IF (= @language "deutsch")   (SET #Guide  1))
  624.   (IF (= @language "français")  (SET #Guide  2))
  625.   (IF (= @language "español")   (SET #Guide  4))
  626.   (IF (= @language "italiano")  (SET #Guide  7))
  627.   (IF (= @language "português") (SET #Guide  9))
  628.   (IF (= @language "svenska")   (SET #Guide 10))
  629.   (IF (= @language "dansk")     (SET #Guide 11))
  630.  
  631.   ; Don't use an uncopied guide (installer problems) !
  632.  
  633.   (SET #Counter 0)
  634.   (WHILE (< #Counter 2)
  635.    (
  636.     ; Check
  637.  
  638.     (IF (AND (= #GUI00 #FALSE) (= #Guide  0)) (SET #Guide  1))
  639.     (IF (AND (= #GUI01 #FALSE) (= #Guide  1)) (SET #Guide  2))
  640.     (IF (AND (= #GUI02 #FALSE) (= #Guide  2)) (SET #Guide  3))
  641.     (IF (AND (= #GUI03 #FALSE) (= #Guide  3)) (SET #Guide  4))
  642.     (IF (AND (= #GUI04 #FALSE) (= #Guide  4)) (SET #Guide  5))
  643.     (IF (AND (= #GUI05 #FALSE) (= #Guide  5)) (SET #Guide  6))
  644.     (IF (AND (= #GUI06 #FALSE) (= #Guide  6)) (SET #Guide  7))
  645.     (IF (AND (= #GUI07 #FALSE) (= #Guide  7)) (SET #Guide  8))
  646.     (IF (AND (= #GUI08 #FALSE) (= #Guide  8)) (SET #Guide  9))
  647.     (IF (AND (= #GUI09 #FALSE) (= #Guide  9)) (SET #Guide 10))
  648.     (IF (AND (= #GUI10 #FALSE) (= #Guide 10)) (SET #Guide 11))
  649.     (IF (AND (= #GUI11 #FALSE) (= #Guide 11)) (SET #Guide  0))
  650.  
  651.     ; Inc. counter
  652.  
  653.     (SET #Counter (+ #Counter 1))
  654.    )
  655.   )
  656.  
  657.   ; Let the user choose
  658.  
  659.   (SET #Guide
  660.    (ASKCHOICE
  661.     (PROMPT #Msg_Guides)
  662.     (HELP @ASKCHOICE-HELP)
  663.     (CHOICES (IF (= #GUI00 #TRUE) (#Msg_LangEng) (""))
  664.              (IF (= #GUI01 #TRUE) (#Msg_LangGer) (""))
  665.              (IF (= #GUI02 #TRUE) (#Msg_LangFre) (""))
  666.              (IF (= #GUI03 #TRUE) (#Msg_LangDut) (""))
  667.              (IF (= #GUI04 #TRUE) (#Msg_LangSpa) (""))
  668.              (IF (= #GUI05 #TRUE) (#Msg_LangGre) (""))
  669.              (IF (= #GUI06 #TRUE) (#Msg_LangRus) (""))
  670.              (IF (= #GUI07 #TRUE) (#Msg_LangIta) (""))
  671.              (IF (= #GUI08 #TRUE) (#Msg_LangCze) (""))
  672.              (IF (= #GUI09 #TRUE) (#Msg_LangPor) (""))
  673.              (IF (= #GUI10 #TRUE) (#Msg_LangSwe) (""))
  674.              (IF (= #GUI11 #TRUE) (#Msg_LangDan) ("")))
  675.     (DEFAULT #Guide)
  676.    )
  677.   )
  678.  )
  679.  (
  680.   ; Set guide
  681.  
  682.   (IF (= #GUI00 #TRUE) (SET #Guide  0))
  683.   (IF (= #GUI01 #TRUE) (SET #Guide  1))
  684.   (IF (= #GUI02 #TRUE) (SET #Guide  2))
  685.   (IF (= #GUI03 #TRUE) (SET #Guide  3))
  686.   (IF (= #GUI04 #TRUE) (SET #Guide  4))
  687.   (IF (= #GUI05 #TRUE) (SET #Guide  5))
  688.   (IF (= #GUI06 #TRUE) (SET #Guide  6))
  689.   (IF (= #GUI07 #TRUE) (SET #Guide  7))
  690.   (IF (= #GUI08 #TRUE) (SET #Guide  8))
  691.   (IF (= #GUI09 #TRUE) (SET #Guide  9))
  692.   (IF (= #GUI10 #TRUE) (SET #Guide 10))
  693.   (IF (= #GUI11 #TRUE) (SET #Guide 11))
  694.  )
  695. )
  696.  
  697. ; Set languange abbreviation
  698.  
  699. (SET #LangAbbrev (SELECT #Guide "Eng" "Ger" "Fre" "Dut" "Spa" "Gre" "Rus" "Ita" "Cze" "Por" "Swe" "Dan"))
  700.  
  701. ; ============================================================================
  702. ; Install Guide, Readme and Registerform
  703. ; ============================================================================
  704.  
  705. (MAKEDIR "XTDest:XTrace/Guides")
  706.  
  707. ; Select documentation drawer
  708.  
  709. (SET #GuideDrawer (TACKON ("XTSrc:Documentation/") (SELECT #Guide "English" "German" "French" "Dutch" "Spanish" "Greek" "Russian" "Italian" "Czech" "Portuguese" "Swedish" "Danish")))
  710.  
  711. ; Copy guides, readme and registerform
  712.  
  713. (COPYFILES (SOURCE (#GuideDrawer))                            (DEST "XTDest:XTrace/Guides/") (PATTERN "XTrace_#?.guide"))
  714. (COPYFILES (SOURCE (TACKON (#GuideDrawer) ("Read_Me_First"))) (DEST "XTDest:XTrace/"))
  715. (COPYFILES (SOURCE (TACKON (#GuideDrawer) ("RegisterForm")))  (DEST "XTDest:XTrace/"))
  716.  
  717. (COMPLETE 25)
  718.  
  719. ; ============================================================================
  720. ; Install filters
  721. ; ============================================================================
  722.  
  723. (SET #CopySrcDir  "XTSrc:Filters")
  724. (SET #CopyDestDir "XTDest:XTrace/Filters")
  725. (SET #CopyPattern "#?.fltr")
  726. (MAKEDIR #CopyDestDir)
  727.  
  728. (IF (= #update #TRUE) (SET #Filters #CC_OnlyNew) (SET #Filters #CC_All))
  729.  
  730. (IF (= @user-level 2)
  731.  (SET #Filters
  732.   (ASKCHOICE
  733.    (PROMPT #Msg_Filters)
  734.    (HELP #Msg_Filt_Help)
  735.    (CHOICES (CAT #Msg_All     #Msg_WFilters)
  736.             (CAT #Msg_Some    #Msg_WFilters)
  737.             (CAT #Msg_OnlyNew #Msg_WFilters)
  738.             (CAT #Msg_None    #Msg_WFilters))
  739.    (DEFAULT #Filters)
  740.   )
  741.  )
  742. )
  743.  
  744. (IF (= #Filters #CC_All)     ((COPYFILES (SOURCE #CopySrcDir) (DEST #CopyDestDir) (PATTERN #CopyPattern))))
  745. (IF (= #Filters #CC_Some)    ((COPYFILES (SOURCE #CopySrcDir) (DEST #CopyDestDir) (PATTERN #CopyPattern) (CONFIRM) (PROMPT @each-name) (HELP #Msg_Filt_Help))))
  746. (IF (= #Filters #CC_OnlyNew) (FOREACH #CopySrcDir #CopyPattern (IF (NOT (EXISTS (TACKON (#CopyDestDir) (@each-name)))) (COPYFILES (SOURCE (TACKON (#CopySrcDir) (@each-name))) (DEST #CopyDestDir)))))
  747.  
  748. (COMPLETE 37)
  749.  
  750. ; ============================================================================
  751. ; Install filter sequences
  752. ; ============================================================================
  753.  
  754. (COMPLETE 50)
  755. (SET #CopySrcDir  "XTSrc:FilterSequences")
  756. (SET #CopyDestDir "XTDest:XTrace/FilterSequences")
  757. (SET #CopyPattern "#?.fseq")
  758. (MAKEDIR #CopyDestDir)
  759.  
  760. (IF (= #update #TRUE) (SET #FilterSeq #CC_OnlyNew) (SET #FilterSeq #CC_All))
  761.  
  762. (IF (= @user-level 2)
  763.  (SET #FilterSeq
  764.   (ASKCHOICE
  765.    (PROMPT #Msg_FSeq)
  766.    (HELP #Msg_FSeq_Help)
  767.    (CHOICES (CAT #Msg_All     #Msg_WFSeq)
  768.             (CAT #Msg_Some    #Msg_WFSeq)
  769.             (CAT #Msg_OnlyNew #Msg_WFSeq)
  770.             (CAT #Msg_None    #Msg_WFSeq))
  771.    (DEFAULT #FilterSeq)
  772.   )
  773.  )
  774. )
  775.  
  776. (IF (= #FilterSeq #CC_All)     ((COPYFILES (SOURCE #CopySrcDir) (DEST #CopyDestDir) (PATTERN #CopyPattern))))
  777. (IF (= #FilterSeq #CC_Some)    ((COPYFILES (SOURCE #CopySrcDir) (DEST #CopyDestDir) (PATTERN #CopyPattern) (CONFIRM) (PROMPT @each-name) (HELP #Msg_Filt_Help))))
  778. (IF (= #FilterSeq #CC_OnlyNew) (FOREACH #CopySrcDir #CopyPattern (IF (NOT (EXISTS (TACKON (#CopyDestDir) (@each-name)))) (COPYFILES (SOURCE (TACKON (#CopySrcDir) (@each-name))) (DEST #CopyDestDir)))))
  779.  
  780. (COMPLETE 50)
  781.  
  782. ; ============================================================================
  783. ; Install examples
  784. ; ============================================================================
  785.  
  786. (IF 
  787.  (ASKBOOL (PROMPT #Msg_Examples)
  788.           (HELP @ASKBOOL-HELP)
  789.           (DEFAULT 1)
  790.  )
  791.  (
  792.   (MAKEDIR "XTDest:XTrace/Examples")
  793.   (COPYFILES (SOURCE "XTSrc:Examples/") (DEST "XTDest:XTrace/Examples") (ALL))
  794.   (SET #ExamplesInstalled #TRUE)
  795.  )
  796.  (
  797.   (SET #ExamplesInstalled #FALSE)
  798.  )
  799. )
  800.  
  801. (COMPLETE 62)
  802.  
  803. ; ============================================================================
  804. ; Install icons
  805. ; ============================================================================
  806.  
  807. (SET #IconType (ASKCHOICE
  808.                 (PROMPT #Msg_IconType)
  809.                 (HELP @ASKCHOICE-HELP)
  810.                 (CHOICES (#Msg_IconType_Standard) (#Msg_IconType_MagicWB))
  811.                )
  812. )
  813.  
  814. ; Build path, depend on icon type
  815.  
  816. (SET #IconPath (TACKON "XTSrc:Icons" (SELECT #IconType "Standard" "MWB")))
  817.  
  818. ; Install icons
  819. ; defxt_#? icons
  820.  
  821. (MAKEDIR "XTDest:XTrace/Icons")
  822. (COPYFILES (SOURCE #IconPath) (DEST "XTDest:XTrace/Icons/") (PATTERN "defxt_#?.info"))
  823.  
  824. ; Textfiles, Guides
  825.  
  826. (XTINST_COPYICON (TACKON #IconPath (CAT "Project_ReadMeFirst_" #LangAbbrev ".info")) "XTDest:XTrace/"        "Read_Me_First"     #IPT_Snapshot #xPos_ReadMe    #yPos_ReadMe    "Multiview" #Stack_Multiview)
  827. (XTINST_COPYICON (TACKON #IconPath (CAT "Project_RegForm_"     #LangAbbrev ".info")) "XTDest:XTrace/"        "RegisterForm"      #IPT_Snapshot #xPos_RegForm   #yPos_RegForm   "Multiview" #Stack_Multiview)
  828. (XTINST_COPYICON (TACKON #IconPath (CAT "Drawer_Doc_"          #LangAbbrev ".info")) "XTDest:XTrace/"        "Guides"            #IPT_Snapshot #xPos_Guides    #yPos_Guides    ""                         0)
  829. (XTINST_COPYICON (TACKON #IconPath (CAT "Project_Doc_"         #LangAbbrev ".info")) "XTDest:XTrace/Guides/" "XTrace_Main.guide" #IPT_Snapshot #xPos_MainGuide #yPos_MainGuide "Multiview" #Stack_Multiview)
  830.  
  831. ; Drawer
  832.  
  833. (XTINST_COPYICON (TACKON #IconPath "Drawer_XTrace.info") "XTDest:" "XTrace" #IPT_Unsnapshot 0 0 "" 0)
  834.  
  835. ; Programs
  836.  
  837. (XTINST_COPYICON (TACKON #IconPath "Program_XTrace.info"           ) "XTDest:XTrace/" "XTrace"              #IPT_Snapshot #xPos_XTrace #yPos_XTrace ""  4096)
  838. (XTINST_COPYICON (TACKON #IconPath "Program_FileFormatConvert.info") "XTDest:XTrace/" "FileFormatConverter" #IPT_Snapshot #xPos_XTConv #yPos_XTConv "" 50000)
  839.  
  840.  ; Examples
  841.  
  842. (IF (= #ExamplesInstalled #TRUE)
  843.  (
  844.   ; Maindrawer
  845.  
  846.   (XTINST_COPYICON (TACKON #IconPath "Drawer_Examples.info") "XTDest:XTrace/" "Examples" #IPT_Snapshot #xPos_Examples #yPos_Examples "" 0)
  847.  
  848.   ; Subdrawers
  849.  
  850.   (XTINST_COPYEXAMPLEICONS #IconPath "AI"      "Drawing"  "Multiview"                         #Stack_Multiview)
  851.   (XTINST_COPYEXAMPLEICONS #IconPath "DXF2D"   "Drawing"  "Multiview"                         #Stack_Multiview)
  852.   (XTINST_COPYEXAMPLEICONS #IconPath "DXF3D"   "Drawing"  "Multiview"                         #Stack_Multiview)
  853.   (XTINST_COPYEXAMPLEICONS #IconPath "EPSF"    "Drawing"  "Multiview"                         #Stack_Multiview)
  854.   (XTINST_COPYEXAMPLEICONS #IconPath "EPSB"    "Drawing"  "Multiview"                         #Stack_Multiview)
  855.   (XTINST_COPYEXAMPLEICONS #IconPath "FIG"     "Drawing"  "Multiview"                         #Stack_Multiview)
  856.   (XTINST_COPYEXAMPLEICONS #IconPath "HPGL"    "Drawing"  "Multiview"                         #Stack_Multiview)
  857.   (XTINST_COPYEXAMPLEICONS #IconPath "IFFDR2D" "Drawing"  "Multiview"                         #Stack_Multiview)
  858.   (XTINST_COPYEXAMPLEICONS #IconPath "IFFILBM" "Picture"  (EXPANDPATH "XTDest:XTrace/XTrace") #Stack_XTrace   )
  859.   (XTINST_COPYEXAMPLEICONS #IconPath "NFonts"  "NT_Fonts" ""                                                 0)
  860.   (XTINST_COPYEXAMPLEICONS #IconPath "NLogos"  "NT_Logos" ""                                                 0)
  861.  )
  862. )
  863.  
  864. (COMPLETE 75)
  865.  
  866. ; ============================================================================
  867. ; Copy libs
  868. ; ============================================================================
  869.  
  870. (WORKING #Msg_CopyLibs)
  871.  
  872. (MAKEDIR "LIBS:Compressors")
  873. (COPYLIB (SOURCE "XTSrc:Libs/reqtools.library")            (DEST "Libs:")             (CONFIRM) (PROMPT "reqtools.library")  (OPTIONAL AskUser) (HELP #Msg_CLN_Help))
  874. (COPYLIB (SOURCE "XTSrc:Libs/xpkmaster.library")           (DEST "Libs:")             (CONFIRM) (PROMPT "xpkmaster.library") (OPTIONAL AskUser) (HELP #Msg_CLN_Help))
  875. (COPYLIB (SOURCE "XTSrc:Libs/Compressors/xpkSHRI.library") (DEST "Libs:Compressors/") (CONFIRM) (PROMPT "xpkSHRI.library")   (OPTIONAL AskUser) (HELP #Msg_CLX_Help)) 
  876. (COPYLIB (SOURCE "XTSrc:Libs/Compressors/xpkNUKE.library") (DEST "Libs:Compressors/") (CONFIRM) (PROMPT "xpkNUKE.library")   (OPTIONAL AskUser) (HELP #Msg_CLX_Help))
  877. (COPYLIB (SOURCE "XTSrc:Libs/Compressors/xpkIMPL.library") (DEST "Libs:Compressors/") (CONFIRM) (PROMPT "xpkIMPL.library")   (OPTIONAL AskUser) (HELP #Msg_CLX_Help))
  878. (COPYLIB (SOURCE "XTSrc:Libs/Compressors/xpkHUFF.library") (DEST "Libs:Compressors/") (CONFIRM) (PROMPT "xpkHUFF.library")   (OPTIONAL AskUser) (HELP #Msg_CLX_Help))
  879. (COPYLIB (SOURCE "XTSrc:Libs/Compressors/xpkBLZW.library") (DEST "Libs:Compressors/") (CONFIRM) (PROMPT "xpkBLZW.library")   (OPTIONAL AskUser) (HELP #Msg_CLX_Help))
  880.  
  881. (COMPLETE 87)
  882.  
  883. ; ============================================================================
  884. ; Cleanup & End
  885. ; ============================================================================
  886.  
  887. (COMPLETE 100)
  888.  
  889. ; Check for keyfile
  890.  
  891. (SET #KeyfileAvailable (OR (EXISTS "DEVS:KeyFiles/XTrace.key") (EXISTS "XTDest:XTrace/XTrace.key")))
  892. (IF (<> (STRLEN (GETENV "KEYPATH")) 0) (SET #KeyfileAvailable (OR (EXISTS (TACKON (GETENV "KEYPATH") "XTrace.key")) #KeyfileAvailable)))
  893.  
  894. (MAKEASSIGN "XTSrc"  (SAFE))
  895. (MAKEASSIGN "XTDest" (SAFE))
  896.  
  897. (IF (= #KeyfileAvailable #TRUE) (EXIT #Msg_ByeReg) (EXIT #Msg_Bye))
  898.  
  899.